package com.vhall.component.entity.room.vo;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.vhall.component.entity.subject.enums.StatusEnum;
import com.vhall.component.framework.common.annotation.ParamName;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author rui.zhou
 * @date 2021/5/13 11:20
 */
@Data
public class RoomDetailRespVO extends RoomsEntityGuoXinVO implements Serializable {

    @JsonProperty(value = "account_id")
    private Integer accountId;

    @JsonProperty(value = "app_id")
    private String appId;

    @JsonProperty(value = "channel_id")
    private String channelId;

    @JsonProperty(value = "il_id")
    private Integer ilId;

    @JsonProperty(value = "inav_id")
    private String inavId;

    @JsonProperty(value = "paas_access_token")
    private String paasAccessToken;

    @JsonProperty(value = "role_name")
    private String roleName;

    @JsonProperty(value = "nick_name")
    private String nickName;

    @JsonProperty(value = "room_id")
    private String roomId;

    private String subject;

    @JsonProperty(value = "created_at")
    private LocalDateTime createdAt;

    /**
     * 分享简介
     */
    @JsonProperty(value = "share_introduction")
    @ParamName(value = "share_introduction")
    private String shareIntroduction;

    /**
     * 直播横竖屏 1横 2竖
     */
    @JsonProperty("video_type")
    @ParamName("video_type")
    private Integer videoType;

    /**
     * 曝光海报
     */
    @ParamName("poster_url")
    @JsonProperty("poster_url")
    private String posterUrl;

    /**
     * 设为热点设为热点标记位
     * 0 关
     * 1 开
     * <p>
     * {@link StatusEnum}
     */
    @JsonProperty("hot_status")
    @ParamName("hot_status")
    private Integer hotStatus;

    /**
     * 推荐到优理宝首页标记
     * 0 关
     * 1 开
     * <p>
     * {@link StatusEnum}
     */
    @JsonProperty("recommended_status")
    @ParamName("recommended_status")
    private Integer recommendedStatus;

    /**
     * 上下架标记，0 关、没上架，1开、上架
     * <p>
     * {@link StatusEnum}
     */
    @JsonProperty("load_or_unload")
    @ParamName("load_or_unload")
    private Integer loadOrUnload;

    /**
     * 置顶标记
     * 0 关
     * 1 开
     * <p>
     * {@link StatusEnum}
     */
    @JsonProperty("top_status")
    @ParamName("top_status")
    private Integer topStatus;

    /**
     * 预约标记
     * 0 关
     * 1 开
     * <p>
     * {@link StatusEnum}
     */
    @JsonProperty("reservation_status")
    @ParamName("reservation_status")
    private Integer reservationStatus;

    /**
     * 评论标记
     * 0 关
     * 1 开
     * <p>
     * {@link StatusEnum}
     */
    @JsonProperty("comment_status")
    @ParamName("comment_status")
    private Integer commentStatus;

    /**
     * 审核人
     */
    @JsonProperty("reviewer")
    @ParamName("reviewer")
    private Integer reviewer;

    /**
     * 审核人
     */
    @JsonProperty("reviewer_name")
    @ParamName("reviewer_name")
    private String reviewerName;

    /**
     * 上架时间
     */
    @JsonProperty("load_or_unload_at")
    @ParamName("load_or_unload_at")
    private LocalDateTime loadOrUnloadAt;

    /**
     * 置顶时间
     */
    @JsonProperty("top_status_at")
    @ParamName("top_status_at")
    private LocalDateTime topStatusAt;

}
